<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>display()</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
<link rel="home" href="index.html" title="Smarty マニュアル">
<link rel="up" href="api.functions.html" title="Chapter 13. Smarty クラスメソッド">
<link rel="prev" href="api.config.load.html" title="config_load()">
<link rel="next" href="api.fetch.html" title="fetch()">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<div class="navheader">
<table width="100%" summary="Navigation header">
<tr><th colspan="3" align="center">display()</th></tr>
<tr>
<td width="20%" align="left">
<a accesskey="p" href="api.config.load.html">Prev</a> </td>
<th width="60%" align="center">Chapter 13. Smarty クラスメソッド</th>
<td width="20%" align="right"> <a accesskey="n" href="api.fetch.html">Next</a>
</td>
</tr>
</table>
<hr>
</div>
<div class="refentry" title="display()">
<a name="api.display"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2>Name</h2>
<p>display() — テンプレートを表示します。</p>
</div>
<div class="refsect1" title="説明">
<a name="id2833005"></a><h2>説明</h2>
<code class="methodsynopsis"><span class="type">void </span><span class="methodname">display</span>(<span class="methodparam"><span class="type">string </span><span class="parameter">template</span></span>,<br>             <span class="methodparam"><span class="type">string </span><span class="parameter">cache_id</span></span>,<br>             <span class="methodparam"><span class="type">string </span><span class="parameter">compile_id</span></span>);</code><p>
   テンプレートを表示します
   (<a class="link" href="api.fetch.html" title="fetch()"><code class="varname">fetch()</code></a> と違い出力を行います)。
   第１パラメータには、有効な <a class="link" href="template.resources.html" title="テンプレートリソース">テンプレートリソース</a>
   の種類を含むパスを指定する事ができます。任意の第２パラメータには
   <em class="parameter"><code>キャッシュID</code></em> を渡す事ができます。
   詳細は <a class="link" href="caching.html" title="Chapter 14. キャッシュ">キャッシュの項</a> を参照してください。
  </p>
<p>
 任意の第３パラメータとして <em class="parameter"><code>$compile_id</code></em>
 を渡すことができます。
 異なる言語でコンパイルされた別々のテンプレートが存在するような、
 同じテンプレートの異なるバージョンをコンパイルしたい場合に利用します。
 <em class="parameter"><code>$compile_id</code></em> の別の利用法としては、複数の
 <a class="link" href="api.variables.html#variable.template.dir" title="$template_dir"><em class="parameter"><code>$template_dir</code></em></a>
 を持っているが
 <a class="link" href="variable.compile.dir.html" title="$compile_dir"><em class="parameter"><code>$compile_dir</code></em></a>
 は１つしかない場合などがあります。各
 <a class="link" href="api.variables.html#variable.template.dir" title="$template_dir"><em class="parameter"><code>$template_dir</code></em></a>
 に別々の <em class="parameter"><code>$compile_id</code></em> をセットしなければ、
 同名のテンプレートはお互いに上書きされてしまいます。
 この関数をコールする度に compile_id を渡す代わりに、一度
 <a class="link" href="variable.compile.id.html" title="$compile_id">
 <em class="parameter"><code>$compile_id</code></em></a> 変数をセットすることもできます。
</p>
<div class="example">
<a name="id2833802"></a><p class="title"><b>Example 13.12. display()</b></p>
<div class="example-contents"><pre class="programlisting">

&lt;?php
include(SMARTY_DIR.'Smarty.class.php');
$smarty = new Smarty();
$smarty-&gt;caching = true;

// キャッシュが存在しない場合はデータベースを呼び出します
if(!$smarty-&gt;is_cached('index.tpl')) {

  // ダミーデータ
  $address = '245 N 50th';
  $db_data = array(
               'City' =&gt; 'Lincoln',
               'State' =&gt; 'Nebraska',
               'Zip' =&gt; '68502'
             );

  $smarty-&gt;assign('Name', 'Fred');
  $smarty-&gt;assign('Address', $address);
  $smarty-&gt;assign('data', $db_data);

}

// 出力を表示します
$smarty-&gt;display('index.tpl');
?&gt;

   </pre></div>
</div>
<br class="example-break"><div class="example">
<a name="id2833847"></a><p class="title"><b>Example 13.13. display() 関数にテンプレートリソースを指定した例</b></p>
<div class="example-contents">
<p>
   <a class="link" href="api.variables.html#variable.template.dir" title="$template_dir">
   <em class="parameter"><code>$template_dir</code></em></a> ディレクトリ外のファイルを表示するためには、
   <a class="link" href="template.resources.html" title="テンプレートリソース">テンプレートリソース</a>
   を指定します。
  </p>
<pre class="programlisting">

&lt;?php
// ファイルの絶対パス
$smarty-&gt;display('/usr/local/include/templates/header.tpl');

// ファイルの絶対パス (上と同じ)
$smarty-&gt;display('file:/usr/local/include/templates/header.tpl');

// windows環境の絶対パス (接頭辞に"file:"を使う必要があります)
$smarty-&gt;display('file:C:/www/pub/templates/header.tpl');

// "db"と名付けられたテンプレートリソースからインクルードします
$smarty-&gt;display('db:header.tpl');
?&gt;

   </pre>
</div>
</div>
<br class="example-break"><p>
   <a class="link" href="api.fetch.html" title="fetch()"><code class="varname">fetch()</code></a> および
   <a class="link" href="api.template.exists.html" title="template_exists()"><code class="varname">template_exists()</code></a>
   も参照してください。
  </p>
</div>
</div>
<div class="navfooter">
<hr>
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left">
<a accesskey="p" href="api.config.load.html">Prev</a> </td>
<td width="20%" align="center"><a accesskey="u" href="api.functions.html">Up</a></td>
<td width="40%" align="right"> <a accesskey="n" href="api.fetch.html">Next</a>
</td>
</tr>
<tr>
<td width="40%" align="left" valign="top">config_load() </td>
<td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td>
<td width="40%" align="right" valign="top"> fetch()</td>
</tr>
</table>
</div>
</body>
</html>
